const fs = require('fs');

// 获取命令行参数（输入文件路径）
const filePath = process.argv[2];

if (!filePath) {
    console.error('错误: 必须提供JS文件路径作为参数');
    process.exit(1);
}

try {
    // 读取文件内容
    const code = fs.readFileSync(filePath, 'utf8');
    
    // 尝试基本美化
    let beautified = code;
    
    try {
        // 如果已安装js-beautify，尝试使用它
        const beautify = require('js-beautify').js;
        beautified = beautify(code, {
            indent_size: 2,
            space_in_empty_paren: true,
            preserve_newlines: true,
            max_preserve_newlines: 2
        });
    } catch (e) {
        // 简单替代美化 - 修复了之前的语法错误
        beautified = code
            .replace(/\{/g, ' {\n  ')
            .replace(/\}/g, '\n}\n')
            .replace(/;/g, ';\n')
            .replace(/\n\s*\n\s*\n/g, '\n\n');
    }
    
    // 输出美化后的代码
    console.log(beautified);
    
} catch (err) {
    console.error('读取或处理文件失败:', err.message);
    process.exit(1);
}